package com.dayatang.hrm.compensation.domain;

import java.util.Date;
import java.util.List;

import com.dayatang.commons.domain.EntityRepository;
import com.dayatang.hrm.staffing.domain.Employee;

public interface SalaryAccountSuiteEmployeeAssignRepository extends
		EntityRepository<SalaryAccountSuiteEmployeeAssign, Long> {

	List<Employee> findEmployeesBySalaryAccountSuite(
			SalaryAccountSuite salaryAccountSuite, Date queryDate);

	void terminate(SalaryAccountSuite salaryAccountSuite);

	SalaryAccountSuiteEmployeeAssign getValid(
			SalaryAccountSuite salaryAccountSuite, Employee employee,
			Date queryDate);

	SalaryAccountSuite getValidSalaryAccountSuite(Employee employee,
			Date queryDate);

	boolean isAscriptionAlreadyExistExceptSelf(
			SalaryAccountSuite salaryAccountSuite, Employee employee,
			Date fromDate, Date toDate,
			SalaryAccountSuiteEmployeeAssign salaryAccountSuiteEmployeeAssign);

	List<SalaryAccountSuiteEmployeeAssign> findByDatePeriod(Date fromDate,
			Date toDate);


}
